<?php
// $Id$

/**
 * Controller_Admin 控制器
 */
class Controller_Admin extends Controller_Abstract
{

	function actionIndex()
	{
        // 为 $this->_view 指定的值将会传递数据到视图中
		# $this->_view['text'] = 'Hello!';
	}

    /**
     * 登录
     */
    function actionLogin()
    {
        $form = new Form_UserLogin(url('admin/login'));
        if ($this->_context->isPOST() && $form->validate($_POST))
        {
            try
            {
                // 使用 acluser 插件的 validateLogin() 方法验证登录并取得有效的 user 对象
                $user = Admin::meta()->validateLogin($form['username']->value, $form['password']->value);
                // 将登录用户的信息存入 SESSION，以便应用程序记住用户的登录状态
                $this->_app->changeCurrentUser($user->aclData(), 'MEMBER');
                // 登录成功后，重定向浏览器
                return $this->_redirect( url('default/index'));
            }
            catch (AclUser_UsernameNotFoundException $ex)
            {
                $form['username']->invalidate("您输入的用户名 {$form['username']->value} 不存在");
            }
            catch (AclUser_WrongPasswordException $ex)
            {
                $form['password']->invalidate("您输入的密码不正确");
            }
        }

        $this->_view['form'] = $form;
        $this->_viewname = 'register';
    }

    /**
     * 注销
     */
    function actionLogout()
    {
        $this->_app->cleanCurrentUser();
        return $this->_redirect( url('default/index'));
    }
}


